WordPressでサイトを構築している場合や、WEBツールなどをサーバーに設置した時などによく見かける403エラーForbiddenの原因はいろいろあるのですが、その意味は要するに、
あなたがアクセスしたページはインターネット上に存在はするが閲覧することが許可されていません。
という意味です。
403エラーForbiddenのよくある原因
そして、こうなってしまう主な原因は主に以下の6つです。
- ドメインの設定(DNS設定)が不適切である
- .htaccessの設定が不適切である
- WAFの設定が不適切である
- パーミッション(権限・属性)の設定が不適切である
- 一時的にアクセスが増え、サーバー側で制限をかけている
- レンタルサーバー自体の障害やメンテナンス
ありがちな403エラーの原因
この中でもよくあるのが、
- ドメインの設定(DNS設定)が不適切である
- .htaccessの設定が不適切である
- WAFの設定が不適切である
この3つです。
これらについて対処できるのはサイト管理者のみで、もしあなたがサイト管理者だった場合、閲覧者に正しくアクセスしてもらうために適切に設定する必要があります。
ドメインの設定(DNS設定)が不適切な場合の対処方法
ドメインの設定が不適切な場合は、通常、ネットワークエラーが出ますが403エラーが出る場合もあります。その場合、DNSの設定を適切に設定しなければ、何人たりともこのドメインにアクセスすることが出来ません。
多くのレンタルサーバーの場合、コントロールパネルから簡単に設定することが出来ます。
.htaccessの設定が不適切な場合の対処方法
.htaccessが原因の場合も非常に多いです。
そして大抵の場合はDirectoryIndexが原因です。
DirectoryIndexとは?
DirectoryIndexとは、index.htmlやindex.phpなどのファイルを省略して表示させるための設定です。DirectoryIndexを設定できるのはindexだけでなく指定したファイル名を省略させて/(スラッシュ)で表示できます。
わかりやすく例で言うと、
例えば、http://hogehoge.jp で、DirectoryIndexにindex.htmlを設定した場合、
本来、index.htmlを表示するにはhttp://hogehoge.jp/index.htmlにアクセスしなければなりませんが、http://hogehoge.jp/ で表示できるようになります。
DirectoryIndexを設定する
DirectoryIndexの設定の書式は以下です。
DirectoryIndex index.html index.php index.cgi index.shtml index.htm
上記は一例ですが、DirectoryIndexはこのように複数設定することが出来ます。
複数ある場合、左側に書くほど優先順位が高く、同じディレクトリに複数ファイルがあった場合には、左にあるものが優先して表示されます。
つまり、例えば
http://hogehoge.jp に、index.phpと、index.htmlと、index.cgi の3つのファイルがあった場合は、上の例だと、http://hogehoge.jp/ にアクセスした場合は、index.htmlが表示されます。
これを仮にindex.phpを一番に優先して表示したい場合は、
DirectoryIndex index.php index.cgi index.html index.shtml index.htm
もしくはindex.phpが絶対に存在するディレクトリであるならば、
DirectoryIndex index.php
とでもすればOKです。
IPやホストで制限をかけている場合の対処方法
これは、サイト管理者の場合、自分で自分のIPアドレスやホストなどの制限をかけたりはしないので、それ自体はありませんが、よくあるのは、海外IPなど排除している場合にも起こります。
よく聞くのは、FUTOKAなどでWordpressのダッシュボードにログインしようとすると403エラーが出てしまうと言うやつ。
これは、海外IPの判定方法に問題があるのですが、結構、国内IPであっても海外判定を受けてしまい、結果、管理者自体がWordpressにログインできなくなります。
これに関しては、レンタルサーバーのコントロールパネルから、海外IP排除の機能をOFFにするか、もしくは自分のIPアドレスを個別に許可するかのどちらかの設定を行うことで解決します。
WAFの設定が不適切な場合の対処方法
レンタルサーバーWAF機能のせいで403Forbiddenエラーが出ることがあります。
ヘテムルの場合、このエラーが出たときには、サーバーの管理画面からエラーログを見ることが出来、このコードを.htaccessにて許可してやるなどすれば解決するのですが、ロリポップの場合、結構厄介で、スタイルシートの記述に反応して403エラーが出てしまうため、もはや不具合といっていいレベルなので、WAFを切ることでしか解決するのは難しいです。
ロリポップWAF機能をOFFにする方法
ロリポップ管理画面にログイン後、WEBツール → WAF設定 に移動。
WAF機能をOFFにしたいドメインの無効ボタンをクリックすればOFFになります。
無効にした後、反映されるまでには一定時間かかりますので、少し時間をおいてください。
その他の403エラーについて
パーミッション(権限・属性)の設定が不適切である場合については、サイトオーナー自身が設定しているはずなので、不都合があれば設定を変更してください。
一時的にアクセスが増え、サーバー側で制限をかけている場合や、レンタルサーバー自体の障害やメンテナンスの場合は、サイトオーナーであっても訪問者であっても、出来ることはありませんので、しばらくたってから再訪問するか諦めて他のサイトに移動するかの2択になります。
最新ネットビジネス速報をいち早くお届け!
有益な情報を最新で配信しています。
メルマガ登録 |